﻿using System;
using System.Windows.Forms;
using SiGeCoPre.Presupuesto_Util;

namespace SiGeCoPre.Presupuesto_ViewGeneral
{
    /// <summary>
    /// Formulario para cargar los datos de la proforma
    /// </summary>
    public partial class frmProForma : Form
    {
        static string cif;
        static string fob;
        static string codigo;
        static string[] valores;

        public frmProForma()
        {
            InitializeComponent();
        }

        private void btnCargar_Click(object sender, EventArgs e)
        {
            cif = txtCif.Text;
            fob = txtFob.Text;
            codigo = txtCod.Text;

            this.Close();
            this.Dispose();
        }

        /// <summary>
        /// Intercambia los valores
        /// </summary>
        /// <returns>Devuelve un arreglo con los valores cargados</returns>
        public static string[] pasarValores()
        {
            valores = new string[3];
            valores[0] = cif;
            valores[1] = fob;
            valores[2] = codigo;
        
            return valores;
        }

        /// <summary>
        /// Carga los valores
        /// </summary>
        /// <param name="v">Determina los valores a cargar</param>
        public void cargarValores(string[] v)
        {
            if (null != v)
            {
                valores[0] = v[0];
                valores[1] = v[1];
                valores[2] = v[2];    
            }
            
        }

        private bool verificar()
        {
            bool verificado = false;
            bool fobCorrecto = false;
            bool codCorrecto = false;

            if (!Validador.es_decimal(txtFob))
            {
                errorProvider1.SetError(txtFob, "Formato: ##.##");
            }
            else
            {
                errorProvider1.SetError(txtFob, String.Empty);
                fobCorrecto = true;
            }

            if (!Validador.es_factura(txtCod))
            {
                errorProvider1.SetError(txtCod, "Formato: ####-########/####");
            }
            else
            {
                errorProvider1.SetError(txtCod, String.Empty);
                fobCorrecto = true;
            }

            if (fobCorrecto && codCorrecto)
            {
                verificado = true;
            }

            return verificado;
        }

        private void frmProForma_Load(object sender, EventArgs e)
        {
            if (null != valores)
            {
                txtCif.Text = valores[0];
                txtFob.Text = valores[1];
                txtCod.Text = valores[2];
            }
        }
    }
}
